using FluentNHibernate.Mapping;

namespace Neturion.Dados
{
    public class MapCheque : ClassMap<Cheque>
    {
        public MapCheque()
        {
            Table("cheques");
            Id(x => x.ChequeId);
            Map(x => x.Compensacao);
            Map(x => x.C1);
            Map(x => x.C2);
            Map(x => x.C3);
            Map(x => x.Numero);
            Map(x => x.Serie);
            Map(x => x.Observacao).CustomSqlType("TEXT");
            References(x => x.Destinatario).Not.LazyLoad();
            Map(x => x.EnumTipoCheque).CustomType(typeof(EnumTipoCheque));
            References(x => x.ContaBanco).Not.LazyLoad();
            Map(x => x.DataEmissao);
            Map(x => x.DataBomPara);
            Map(x => x.Valor);
            HasMany<SituacaoCheque>(x => x.ListaSituacoes).Not.LazyLoad().Cascade.All();
            HasMany<Pagamento>(x => x.ListaPagamentosCheque).Not.LazyLoad();
        }
    }
}